iT邦幫忙

2023 iThome 鐵人賽

DAY 19
0
自我挑戰組

2023年度學習分享系列 第 19

優化open ai prompt來指定輸出

  • 分享至 

  • xImage
  •  

文章未來將更新於:
https://kevinyay945.com/golang-project-design/anki-support/optimize-openai-prompt-for-make-a-sentence/

在寫完前兩篇後,發現要將openai的輸出放到anki中的時候,會發生格式不符的問題

在anki中,如果我想要符合 Japanese Support 的格式,我需要在翻譯出來的漢字前面加上一個空白,他才有辦法render的順利
錯誤的格式

お茶[おちゃ]に砂糖[さとう]を入[い]れて甘[あま]くします。

輸出

期望的格式

お茶[おちゃ]に 砂糖[さとう]を 入[い]れて 甘[あま]くします。

輸出

因此,會需要調整openai的提示詞,來讓他可以輸出成我希望的格式

另外,因為日文的漢字可以組成很多意思的片語,也有各式各樣的念法,所以在後面也補上中文的翻譯以及預期的平假名念法,讓他用我指定的意思來造句

在指定格式的部分,因為這次有需要輸出空白的部分,遇到了比較大的問題
解決方案是
先定義什麼是分隔符
接著將需要的內容放入

接下來的輸入輸出內容我用三個米字號包起來

您現在是一個日文老師
我會提供你一個日文的單詞,平假名以及他的中文意思
輸入
***
両親[りょうしん]
雙親
***

接下來在下面放上各種範例

要請你為一個JLPT程度為N5的同學造句,並在漢字後面附上相對應的平假名
附上漢字的方式請依照以下格式
在漢字前面加上一個半形空白,在漢字後面用中括號將平假名填入

漢字:
***山***
平假名: 
***やま***

輸出:
*** 山[やま]***


完整句子
***私は山でハイキングを楽しんでいます***
輸出
*** 私[わたし]は 山[やま]でハイキングを 楽[たの]しんでいます***

最後,也在後面的預期互動的內容先加入幾個自己準備的範例,讓openai可以參考

    {
      "role": "user",
      "content": "両親[りょうしん]\n雙親"
    },
    {
      "role": "assistant",
      "content": "私[わたし]の 両親[りょうしん]は 旅行[りょこう]に 行[い]っています。\n私の両親は旅行に行っています。\n我的父母正在旅行中。"
    },
    {
      "role": "user",
      "content": "月餅[げっぺい]\n月餅"
    },
    {
      "role": "assistant",
      "content": "友達[ともだち]と 一緒[いっしょ]に 月餅[げっぺい]を 食[た]べました。\n友達と一緒に月餅を食べました。\n我和朋友一起吃月餅。"
    },
    {
      "role": "user",
      "content": "彼の方[あのかた]\nあの人 的敬語 他 她 那個人"
    },
    {
      "role": "assistant",
      "content": " 彼の方[あのかた]が 日本語[にほんご]が 上手[じょうず]です。\n彼の方が日本語が上手です。\n他的日語比較流利。"
    },
    {
      "role": "user",
      "content": "八つ[やっつ]\n八個"
    },
    {
      "role": "assistant",
      "content": " 私[わたし]の 妹[いもうと]は 八つ[やっつ]の 時[とき]にピアノを 始[はじ]めました。\n私の妹は八つの時にピアノを始めました。\n我的妹妹八歲的時候開始學鋼琴。"
    },
    {
      "role": "user",
      "content": "高速[こうそく]バス\n高速巴士"
    },
    {
      "role": "assistant",
      "content": " 私[わたし]は 高速[こうそく]バスで 東京[とうきょう]へ 行[い]きます。\n私は高速バスで東京へ行きます。\n我會坐高速巴士去東京。"
    },
    {
      "role": "user",
      "content": "読[よ]み 方[かた]\n讀法 念法"
    },
    {
      "role": "assistant",
      "content": "この 漢字[かんじ]の 読[よ]み 方[かた]を 教[おし]えてください。\nこの漢字の読み方を教えてください。\n請告訴我這個漢字的讀法。"
    },
    {
      "role": "user",
      "content": "砂糖[さとう]\n砂糖"
    },
    {
      "role": "assistant",
      "content": "お 茶[ちゃ]に 砂糖[さとう]を 入[い]れると 甘[あま]くなります。\nお茶に砂糖を入れると甘くなります。\n在茶裡加糖會變甜。"
    },
    {
      "role": "user",
      "content": "エアコン\n冷氣"
    },
    {
      "role": "assistant",
      "content": "夏[なつ]になると エアコンをつけて 部屋[へや]を 冷[さ]やします。\n夏になるとエアコンをつけて部屋を冷やします。\n夏天的時候,我會開冷氣來降溫房間。"
    },
    {
      "role": "user",
      "content": "電気[でんき]\n電燈"
    },
    {
      "role": "assistant",
      "content": "夜[よる]になると 電気[でんき]をつけて 部屋[へや]を明[あか]るくします。\n夜になると電気をつけて部屋を明るくします。\n晚上的時候,我會開燈讓房間變亮。"
    },
    {
      "role": "user",
      "content": "間[あいだ]\n兩者之間"
    },
    {
      "role": "assistant",
      "content": "私[わたし]と 友達[ともだち]の 間[あいだ]には 深[ふか]い 絆[きずな]があります。\n私と友達の間には深い絆があります。\n我和朋友之間有著深厚的羈絆。"
    },
    {
      "role": "user",
      "content": "後[うし]ろ\n後面"
    },
    {
      "role": "assistant",
      "content": "電車[でんしゃ]の 後[うし]ろに 立[た]ってください。\n電車の後ろに立ってください。\n請站在電車的後面。"
    }

加入這些變數後,他就有辦法很高的機率產生我想要的內容了


上一篇
實做infrastructure Anki
下一篇
介紹anki使用流程及安裝套件
系列文
2023年度學習分享30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言